Python管理 - Mamba
mamba
基于Pyhton命令行实现,替换conda, 提供高速,更可靠的环境管理micromamba
纯C++实现,单个可执行文件
一. 安装
1.1 Mambafore
#下载mambaforge
wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
#2 安装
sh Mambaforge-Linux-x86_64.sh
source ~/.bashrc
#3 添加软件源
conda config --add channels bioconda
mamba -h
1.2 miniforge(推荐)
1.2.1 自动安装
1.2.1.1 经典安装
1.下载miniforge
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
2.安装mamba
sh Miniforge3-Linux-x86_64.sh
3.刷新
source ~/.bashrc
4.添加软件源
conda config --add channels bioconda
5.直接使用mamba
micromamba
1.2.1.2 一行命令安装(三选一)官方推荐
# 官方教程
"${SHELL}" <(curl -L micro.mamba.pm/install.sh)
# Linux 默认shell 使用bash
curl micro.mamba.pm/install.sh | bash
# Linux 默认shell 使用zsh
curl micro.mamba.pm/install.sh | zsh
macos使用Homebrew安装
On macOS, you can install micromamba from Homebrew:
brew install micromamba
1.2.2 手动一步步安装(用来更新也行,验证)
1.2.2.0 省流版
mamba:基于Pyhton命令行实现,替换conda, 提供高速,更可靠的环境管理
micromamba:纯C++实现,单个可执行文件
1.创建文件夹
mkdir mamba && cd mamba
2.下载micromamba并解压到当前目录
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
3.添加环境变量
./bin/micromamba shell init -s bash -p ./ # -p可以设置自己想要的路径,以后创建的环境,配置文件等都会在这个目录下
source ~/.bashrc
1.2.2.1 下载安装包
1.下载micromamba并解压
mkdir -p /share/nas1/yuj/software/micromamba && cd /share/nas1/yuj/software/micromamba
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
ls bin/micromamba
1.2.2.2 配置shell环境变量
如果您想在临时用例中快速使用 micromamba,您可以运行:
export MAMBA_ROOT_PREFIX=/some/prefix # optional, defaults to ~/micromamba
这个 shell hook 会修改您的 shell 变量以包含 micromamba 命令。
如果您想保留这些更改,可以通过运行 ./micromamba shell init ...
自动将它们写入 .bashrc
(或 .zshrc
)。这还允许您选择自定义 MAMBA_ROOT_ENVIRONMENT,这是包和 repodata 缓存所在的位置。
# Linux/bash:
./bin/micromamba shell init -s bash -p ./ # ./指代/share/nas1/yuj/software/micromamba
source ~/.bashrc
# macOS/zsh:
./micromamba shell init -s zsh -p ~/micromamba # -p可以设置自己想要的路径,创建的环境,配置文件等都在这个目录下
source ~/.zshrc
使用micromamba调用, 名字稍长,我们可以在~/.bashrc里加上这句来通过mamba调用
alias mamba=micromamba
二. 使用
micromamba activate # this activates the base environment
micromamba install python=3.6 jupyter -c conda-forge
# or
micromamba create -n env_name xtensor -c conda-forge
micromamba activate env_name
micromamba deactivate
2.1 使用mamba安装生物软件
mamba install -y fastqc
mamba install -y fastp
mamba install -y multiqc
mamba install -y seqkit
mamba install -y kraken2
mamba install -y krakentools
mamba install -y bracken
mamba install -y bowtie2
mamba install -y samtools
mamba install -y krona
2.2 详细用法
(1)查询软件:mamba search bedtools -c bioconda
(2)下载软件:mamba install bedtools -c bioconda -y
(3)查看下载结果:bedtools -h
2.3 其他操作
2.3.1 自动更新
# Once installed, micromamba can be updated with
micromamba self-update
# A explicit version can be specified with
micromamba self-update --version 1.4.6
2.3.2 查询软件依赖
mamba repoquery depends -t salmon
2.3.3 查询哪些包依赖于这个包
mamba repoquery whoneeds libgcc-ng
三. 复用之前conda安装的软件
# 重用之前conda的环境
cd /share/nas1/yuj/software
mkdir -p micromamba/envs/
ln -s /share/nas1/yuj/software/miniconda3/envs/* micromamba/envs/
四.配置(修改软件源)
mamba读取rc文件有一个优先级:
// on_unix
{
"/etc/conda/.condarc",
"/etc/conda/condarc",
"/etc/conda/condarc.d/",
"/etc/conda/.mambarc",
"/var/lib/conda/.condarc",
"/var/lib/conda/condarc",
"/var/lib/conda/condarc.d/",
"/var/lib/conda/.mambarc"
}
{ root_prefix }/.condarc
{ root_prefix }/condarc
{ root_prefix }/condarc.d
{ root_prefix }/.mambarc
~/.conda/.condarc
~/.conda/condarc
~/.conda/condarc.d
~/.condarc
~/.mambarc
{ target_prefix }/.condarc
{ target_prefix }/condarc
{ target_prefix }/condarc.d
{ target_prefix }/.mambarc
$CONDARC,
$MAMBARC;
root_prefix 为之前设置的-p 参数值, 我们就在root_prefix 添加一个.mambarc文件。
cd /share/nas1/yuj/software/micromamba
vim .mambarc
## 添加以下内容,并保存
channels:
- defaults
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
custom_channels:
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
# always_yes: true
auto_activate_base: false
上述配置中,将 conda-forge, bioconda, r这三个设为了默认channel, 所以以后安装这3个channel时,不用在命令行通过-c CHANNEL 来指定这三个channel了。同时always_yes设为true, 也不用每次加-y参数或者每次手动输入y确认安装包了。